//公共请求前缀
// let baseUrl = 'https://apifoxmock.com/m1/4728220-0-default/api'
let baseUrl = ''

//数据mock
// 通过环境来判断，（开发/生产环境区分）
if (process.env.NODE_ENV === 'development') {
	// baseUrl = 'http://localhost:5173/api'
	baseUrl = 'https://apifoxmock.com/m1/4728220-0-default/api'
} else {
	baseUrl = 'https://apifoxmock.com/m1/4728220-0-default/api'
}

export default function http (url, data={}, method = 'GET') {
	
	// 对外支持链式调用（外面通过.then可以拿到）
	//通过异步形式
	return new Promise((resolve, reject) => {
		uni.request({
			url: baseUrl + url,
			data,
			method,
			//请求头，后面用户鉴权通过token
			header: {
				//从缓存里面拿
				'token': uni.getStorageSync('token') || ''
			},
			//res-(response响应)
			success: res => {
				// http的状态码
				if (res.statusCode == 200) {
					if (res.data.code == 1) {
						//正常
						resolve(res.data.data)
					} else if (res.data.code == 0){
						uni.showToast({
							//异常的消息
							title: res.data.msg,
							icon: 'none'
						})
						改变promise的状态,对外暴露
						reject(res.data.msg)
					}
				}
			},
			//调用失败
			fail: () => {
				uni.showToast({
					title: '服务器请求异常',
					icon: 'none'
				})
			}
		})
	})
}